Apparatus and method for generating mesh models of feathers

ABSTRACT

Provided are an apparatus and a method for generating mesh models of feathers. The apparatus for generating the mesh models of the feathers includes a geometrical model analyzing unit that analyzes groups of barbs included in a geometrical curve model of the feather; a calculating unit that calculates the number of grids for each of the groups of barbs by applying curve lengths of the barbs and an average length of the curve lengths included in each of the groups of barbs; and a mesh model generating unit that constructs the geometrical curve models as polygonal mesh models based on the number of grids. According to the present invention, it extracts curved points by using characteristics of a model of a feather and constructs polygonal meshes by using the extracted curved points, thereby making it possible to physically and realistically express the forced physical variation of the polygonal meshes.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to Korean Patent Application No.10-2009-0126719 filed on Dec. 18, 2009 and Korean Patent Application No.10-2010-0033390 filed on Apr. 12, 2010, the entire contents of which areherein incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus and a method forgenerating mesh models of feathers, and in particular, to an apparatusand a method for generating mesh models of feathers capable ofconstructing a polygonal mesh model by using curved data of ageometrical curve model in order to express interaction between CG(Computer Graphics) models and physical forces such as wind, gravity,etc.

2. Description of the Related Art

Increasing demand for high-quality images is due to the expandeddistribution of visual contents in the fields of CG and VR (VirtualReality). In order to create high-quality images, objects having acomplex shape are modeled similar to real objects by using the CGtechnology. Generally, the objects are modeled by using polygons(polygonal meshes); however, in order to more accurately perform themodeling, a free curve and a free curved surface which have an excellentpower of expression has been used.

When a 3D scanner is used to model the complicated object, curvedsurface points in a grid form are provided or curved surface points in aline form are provided. In order to reconstruct the provided objects bya computer, the polygonal meshes should be constructed by using thesepoints.

The reason for using the polygonal meshes is that current graphichardwares are designed to express the polygonal meshes and canapproximately express the characteristics of the curved surface includedin static models, for example, curvature, change in curvature, and soon. The free curve or the free curved surface may be suitable to moreaccurately express the characteristics of the curved surface; however,it is difficult to express physical variations.

Technologies constructing the polygonal meshes by using the curved dataacquired by using the 3D scanner, etc., have been developed.

The related art provides a method that converts the curved surfacepoints in the curved line form or the curved surface points in the gridform into the polygonal mesh model; however, the method does notconsider the physical variations changed by the external physicalforces.

SUMMARY OF THE INVENTION

An aspect of the present invention provides an apparatus and a methodfor generating mesh models of feathers that converts a geometrical curvemodel of a feather into a polygonal curved surface.

Another aspect of the present invention provides an apparatus and amethod for generating mesh models of feathers capable of constructing apolygonal mesh model in consideration of physical variations.

Still another aspect of the present invention provides an apparatus anda method for generating mesh models of feathers capable of calculatingand expressing physical motions of a feather by a computer.

Yet another aspect of the present invention provides an apparatus and amethod for generating mesh models of feathers capable of calculating thenumber of grids and a grid ratio for groups of barbs of a feather by asimple equation.

According to an exemplary embodiment of the present invention, there isprovided an apparatus for generating mesh models of feathers, including:a geometrical model analyzing unit that analyzes groups of barbsincluded in a geometrical curve model of the feather; a calculating unitthat calculates the number of grids for each of the groups of barbs byapplying curve lengths of the barbs and an average curve length for thecurve lengths included in each of the groups of barbs; and a mesh modelgenerating unit that constructs a polygonal mesh model from thegeometrical curve model based on the number of grids.

The calculating unit calculates the number of grids for the groups ofbarbs by applying the maximum values and the minimum values for theaverage curve length of each of the groups of barbs.

The calculating unit receives the number of grids corresponding to eachof the maximum values and the minimum values from a user to calculatethe number of grids for each of the groups of barbs.

The mesh model generating unit performs tessellation of curved surfaceof the groups of barbs to extract curved surface points from curved linepoints of the barbs and constructs the polygonal mesh model by using thecurved surface points.

The mesh model generating unit determines whether barb widths of thegroups of barbs are to be applied to construct the polygonal mesh model.

The geometrical model analyzing unit detects the barb widths for each ofthe groups of barbs when the barb widths are to be applied to thepolygonal mesh model.

The geometrical model analyzing unit detects the maximum value and theminimum value of the barb widths.

The calculating unit calculates a grid ratio for each of the groups ofbarbs by using the barb widths.

The mesh model generating unit constructs the polygonal mesh models byapplying the grid ratio to the number of grids.

According to another exemplary embodiment of the present invention,there is provided a method for generating mesh models of feathers,including the steps of: a step of calculating curve lengths of barbsbelonging to each of the groups of barbs of geometrical curve model ofthe feather and calculating a average curve length for the curve lengthsof the barbs; a steps of reflecting the average curve length of each ofthe groups of barbs to calculate number of grids for each of the groupsof barbs; and a step of applying the number of grids for each of thegroups of barbs to construct a polygonal mesh model from the geometricalcurve model.

The step of calculating the average curve length includes detecting themaximum value and the minimum value for the average curve length of eachof the groups of barbs.

The method for generating the mesh models of the feathers furtherincludes prior to the step of calculating the number of grids, a stepreceiving the number of grids corresponding to the maximum value and theminimum value from a user.

The step of calculating the number of grids uses the number of gridscorresponding to the maximum value and the minimum value in order tocalculate the number of grids for each of the groups of barbs.

The method for generating the mesh models of the feathers furtherincludes prior to the step of constructing the polygonal mesh model, astep of performing tessellation for curved surface of the groups ofbarbs to extract the curved surface points from the curved line pointsof the barbs.

The method for generating the mesh models of the feathers furtherincludes a step of determining whether the barb widths of the groups ofbarbs are to be applied to construct the polygonal mesh model.

The method for generating the mesh models of the feathers furtherincludes a step of calculating the barb widths for each of the groups ofbarbs when the barb widths are to be applied to the polygonal meshmodel.

The method for generating the mesh models of the feathers furtherincludes a step of detecting the maximum value and the minimum value ofthe barb widths.

The method for generating the mesh models of the feathers furtherincludes a step of calculating a grid ratio for each of the groups ofbarbs by using the barb widths.

The step of constructing the polygonal mesh model applies the grid ratioto the number of grids to construct the polygonal mesh model.

The apparatus and method for generating the mesh models of the feathersaccording to the exemplary embodiments of the present invention can havethe following effects.

First, the present invention extracts the curved surface points by usingthe characteristics of the feather model formed of the curved lines andforms the polygonal meshes by using the extracted curved surface points,thereby making it possible to easily construct the meshes.

Second, the present invention can physically and realistically expressthe variation of the feather model by converting the surfaces having thefeather model into the polygons so that it calculates the reaction tothe physical force applied to the feather.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram showing a geometrical curve model of a feather towhich the present invention is applied;

FIG. 2 is a block diagram referenced for explaining a configuration ofan apparatus for generating mesh models of feathers according to anexemplary embodiment of the present invention;

FIGS. 3 and 4 are diagrams referenced for explaining an operation of theapparatus for generating the mesh models of the feathers according to anexemplary embodiment of the present invention; and

FIGS. 5 and 6 are flow charts referenced for explaining an operation ofthe apparatus for generating the mesh models of the feathers accordingto an exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, exemplary embodiments of the present invention will bedescribed with reference to the accompanying drawings.

FIG. 1 is a diagram showing a geometrical curve model of a feather towhich the present invention is applied.

As shown in FIG. 1, a geometrical curve model of a feather has a formwhere plurality of barbs are attached to a shaft.

In this case, the barbs are configured of a plurality of groups of barbsg1, g2, g3, g4, and g5 as shown in FIG. 1. The barbs included in eachgroup of barbs faces a predetermined direction and each of the groups ofbarbs face different directions. In other words, since the barbs move ina unit of the groups of barbs, when the motion of barbs is representedby a computer, it is efficient to use the polygonal mesh models similarto the shape of the aggregation of the curved lines rather thanrepresenting the curve model of barbs.

Therefore, when the apparatus for generating the mesh models of thefeathers according to an exemplary embodiment of the present inventiongenerates the polygonal mesh models for the feather, the polygonal meshmodels are generated in the unit of each group of barbs and the lengthinformation l_(i), l_(M), and l_(m) of the barbs and are generated byapplying the width W_(i) of the groups of barbs belonging to the groupsof barbs.

In this case, the apparatus for generating the mesh models of thefeathers generates the mesh models in consideration of the forcedphysical variation of the meshes, such that the motion of the feathercan be realistically represented by a simple calculation.

FIG. 2 is a block diagram referenced for explaining a configuration ofan apparatus for generating the mesh models of the feathers according toan exemplary embodiment of the present invention.

As shown in FIG. 2, the apparatus for generating the mesh models of thefeathers according to an exemplary embodiment of the present inventionincludes an input unit 110, an output unit 120, a control unit 130, ageometrical model analyzing unit 140, a calculating unit 150, a meshmodel generating unit 160, and a storage unit 170.

The input unit 110 serves to transfer control command input through akeyboard, a mouse, etc., from the user or data input from the outsidethrough an interface, etc., to the control unit 130. The output unit 120serves to output the operational state or result data on a screen, suchas a monitor, etc.

The geometrical model analyzing unit 140 analyzes the groups of barbsincluded in the geometrical curve model of the feather. In this case,the geometrical model analyzing unit 140 detects the curve lengths ofthe barbs belonging to each group of barbs.

In addition, the geometrical model analyzing unit 140 calculates theaverage length of the curved lines for the curve lengths of barbs. Inthis case, the geometrical model analyzing unit 140 detects the maximumvalue l_(M) and the minimum value l_(m) of the average curve length ofeach of the groups of barbs.

In addition, the geometrical model analyzing unit 140 detects the barbwidths for each group of barbs. In this case, the geometrical modelanalyzing unit 140 detects the maximum value W_(M) and the minimum valueW_(m) for the widths of barbs of the groups of barbs.

Meanwhile, the calculating unit 150 calculates the number of grids foreach group of barbs by applying a part of the curve length of the barbsbelonging to each of the groups of barbs.

In this case, Equation of calculating the number of grides depends onthe following Equation 1.

$\begin{matrix}{h = {h_{m} + \frac{\left( {l_{i} - l_{m}} \right) \times \left( {h_{M} - h_{m}} \right)}{\left( {l_{M} - l_{m}} \right)}}} & \left\lbrack {{Equation}\mspace{14mu} 1} \right\rbrack\end{matrix}$

where h represents the number of grids, l_(i) represents the averagelength of the curved lines of the barbs belonging to the i-th group ofbarbs, l_(M) is a maximum value for the average length of the curvedlines of each group of barbs, l_(m) represents the minimum value for theaverage length of the curved lines of each group of barbs, h_(M)represents the number of grids corresponding to l_(M), and h_(m)represents the number of grids corresponding to l_(m).

In this case, the calculating unit 150 calculates the average length forthe curve lengths of the barbs detected from the geometrical modelanalyzing unit 140 for each group of barbs

Meanwhile, h_(M) and h_(m) values are previously given by the user.

Therefore, the calculating unit 150 applies the average curve lengthl_(i) of the barbs belonging to each of the groups of barbs, the maximumvalue l_(M) and the minimum value l_(m) for the average curve lengthsfor each of the groups of barbs, and the h_(M) value and the h_(m) valuegiven from the user to Equation 1, thereby calculating the number ofgrids for the i-th group of barbs. In this case, the calculating unit150 calculates the number of grids for each of the groups of barbs.

Meanwhile, when the calculating unit 150 applies the barb widths for thegroups of barbs in calculating the number of grids, it furthercalculates the grid ratio by using the barb widths.

In this case, the Equation for calculating the grid ratio depends on thefollowing Equation 2.

$\begin{matrix}{V = {V_{m} + \frac{\left( {W_{i} - W_{m}} \right) \times \left( {W_{M} - W_{m}} \right)}{\left( {V_{M} - V_{m}} \right)}}} & \left\lbrack {{Equation}\mspace{14mu} 2} \right\rbrack\end{matrix}$

where V represents the grid ratio, W_(i) represents the barb width ofthe i-th group of barbs, W_(M) represents the maximum value for the barbwidths of the groups of barbs, W_(m) represents the minimum value forthe barb widths of the groups of barbs, V_(M) represents the grid ratiocorresponding to W_(M), and V_(m) represents the grid ratiocorresponding to W_(m). The V_(M) value and the V_(m) value are valuespreviously given by the user.

Therefore, the calculating unit 150 applies the values detected from thegeometrical model analyzing unit 140 to Equation 2, thereby calculatingthe grid ratio for the i-th group of barbs. In this case, thecalculating unit 150 calculates the grid ratio for each of the groups ofbarbs.

In addition, the calculating unit 150 calculates the final number ofgrids from a value h*V obtained by multiplying the number of gridscalculated by Equation 1 by the grid ratio calculated by Equation 2.

The mesh model generating unit 160 generates the polygonal mesh modelfrom the geometrical curve model based on the number of grids. In thiscase, the mesh model generating unit 160 determines whether it appliesthe barb widths of the geometrical curve model, prior to generating thepolygonal mesh model for the geometrical curve model of the feather.

If the mesh model generating unit 160 does not apply the barb widths ofthe geometrical curve model, it generates the polygonal mesh model forthe geometrical curve model of the feather based on the number of gridscalculated by the calculating unit 150.

On the other hand, if the mesh model generating unit 160 applies thebarb widths of the geometrical curve model, it generates the polygonalmesh model for the geometrical curve model of the feather based on thenumber of grids and the grid ratio calculated by the calculating unit150.

In this case, the mesh model generating unit 160 performs tessellationon the curved surface of the groups of barbs to extract the curvedsurface points from the curved line points of the barbs and constructsthe polygonal mesh model by using the extracted curved surface points.

The control unit 130 controls each unit described above. In addition,when the polygonal mesh model of the feather is generated by the meshmodel generating unit 160, the control unit 130 stores the polygonalmesh model of the feather in the storage unit 170 and outputs it throughthe output unit 120 according to the request.

FIGS. 3 and 4 are diagrams referenced for explaining an operation of theapparatus for generating the mesh models of the feathers according to anexemplary embodiment of the present invention; and

FIG. 3 shows the polygonal meshes according to a tessellation process ingenerating the mesh models of the feather according to an exemplaryembodiment of the present invention.

In other words, the mesh model generating unit 160 performs tessellationbased on the number of grids and the grid ratio calculated from thegeometrical curve model of the feather, thereby generating the polygonalmesh as shown in FIG. 3.

The polygonal mesh shown in FIG. 3 represents example construction of apolygonal mesh, when the number of grids is 3 and the grid ratio is 3.

FIG. 4 shows an example where the polygonal mesh generated as shown inFIG. 3 is applied to the geometrical curve model of the feather.

As shown in FIG. 4, the polygonal mesh model of the feather is generatedby disposing the polygonal mesh generated for each of the groups ofbarbs in the area where the corresponding groups of barbs are disposed.

The operations of the present invention configured as described abovewill now be described.

FIGS. 5 and 6 are flow charts referenced for explaining an operation ofthe apparatus for generating the mesh models of the feathers accordingto an exemplary embodiment of the present invention.

First, as shown in FIG. 5, when the geometrical curve model of thefeather is input (S200), the geometrical model analyzing unit 140analyzes the input geometrical curve model.

Thereafter, the mesh model generating unit 160 determines whether itapplies the barb widths of each of the groups of barbs to construct thepolygonal mesh model of the feather (S220).

When the barb widths are applied, the process after ‘A’ of FIG. 6 isperformed.

Meanwhile, when the barb widths are not applied, the calculating unit150 calculates the average curve length for the curve lengths of thebarbs belonging to each of the groups of barbs (S230).

In addition, the calculating unit 150 detects the maximum value and theminimum value for the average curve length of each of the groups ofbarbs calculated during step ‘S230’ (S240).

In this case, the calculating unit 150 applies the average curve lengthof the i-th group of barbs calculated during step ‘S230’ and the maximumvalue and the minimum value during step ‘S240’ in calculating the numberof grids for the i-th group gi for barbs (S250).

In this case, since i=1 during step ‘S210’, the number of grids for thegroup g1 of the first barbs among the groups of barbs during step ‘S250’can be calculated.

The mesh model generating unit 160 applies the number of grids duringstep ‘S250’ in performing tessellation (S260). The mesh model generatingunit 160 converts the curved line points of the first group g1 of thebarbs into the curved surface points during step ‘S260’, therebygenerating the polygonal mesh model.

In addition, the mesh model generating unit 160 applies the polygonalmesh generated during step ‘S260’ to the first group g1 of the barbs ofthe geometrical curve model, thereby generating the polygonal mesh model(S270).

Thereafter, when there exist other groups of barbs in the geometricalcurve model, steps ‘S250’ to ‘S290’ are repeatedly performed until thepolygonal mesh model for the final group of barbs is generated while ivalue is increased by 1.

If the polygonal mesh model for the final group of barbs is generated,the polygonal mesh model for all the groups of barbs is completed, andthe process of generating the mesh models ends.

Meanwhile, when the barb widths are applied during step ‘S220’, as shownin FIG. 6, the calculating unit 150 detects the barb widths for each ofthe groups of barbs from the geometrical model analyzing unit 140(S300). In addition, the calculating unit 150 detects the maximum valueand the minimum value for the barb widths of the groups of barbs (S310).

Thereafter, the calculating unit 150 calculates the average curve lengthfor the curve lengths of the barbs belonging to each of the groups ofbarbs (S320).

In addition, the calculating unit 150 detects the maximum value and theminimum value for the average curve length of each of the groups ofbarbs calculated during step ‘S320’ (S330).

In this case, the calculating unit 150 applies the average curve lengthof the i-th group of barbs calculated during step ‘S320’ and the maximumvalue and the minimum value during step ‘S330’, thereby calculating thenumber of grids for the i-th group gi for barbs (S340).

In this case, since i=1 during step ‘S210’ of FIG. 5, the number ofgrids for the first group g1 of the barbs among the groups of barbsduring step ‘S340’ can be calculated.

In addition, the calculating unit 150 reflects the barb widths of thefirst group g1 of the barbs, thereby calculating the grid ratio (S350).Step ‘S350’ applies the barb widths of the first group g1 of the barbsdetected during step ‘S300’ and the maximum value and the minimum valuefor the barb widths detected during step ‘S310’, thereby calculating thegrid ratio V. In this case, the final number of grids is a value of h*V.

The mesh model generating unit 160 applies the number of gridscalculated during step ‘S340’ and the grid ratio calculated during step‘S350’ in performing tessellation (S360). The mesh model generating unit160 converts the curved line points of the first group g1 of the barbsinto the curved surface points during step ‘S360’, thereby generatingthe polygonal mesh.

In addition, the mesh model generating unit 160 applies the polygonalmesh generated during step ‘S360’ to the first group g1 of the barbs ofthe geometrical curve model, thereby generating the polygonal mesh model(S370).

Thereafter, when there exist other groups of barbs in the geometricalcurve model (S380), steps ‘S340’ to ‘S390’ are repeatedly performeduntil the polygonal mesh model for the final group of barbs is generatedwhile the i value is increased by 1 (S390).

If the polygonal mesh model for the final group of barbs is generated,the polygonal mesh model for all the groups of barbs is completed, andthe process after ‘B’ of FIG. 5 proceeds and the process of generatingthe mesh model ends.

While this invention has been described in connection with what ispresently considered to be practical exemplary embodiments, it is to beunderstood that the invention is not limited to the disclosedembodiments, but, on the contrary, is intended to cover variousmodifications and equivalent arrangements included within the spirit andscope of the appended claims. Accordingly, the actual technicalprotection scope of the present invention must be determined by thespirit of the appended claims.

1. An apparatus for generating mesh models of feathers, comprising: ageometrical model analyzing unit that analyzes groups of barbs includedin a geometrical curve model of the feather; a calculating unit thatcalculates the number of grids for each of the groups of barbs byapplying curve lengths of the barbs and an average curve length for thecurve lengths included in each of the groups of barbs; and a mesh modelgenerating unit that constructs a polygonal mesh model from thegeometrical curve model based on the number of grids.
 2. The apparatusfor generating the mesh models of the feathers according to claim 1,wherein the calculating unit calculates the number of grids for thegroups of barbs by applying the maximum values and the minimum valuesfor the average curve length of each of the groups of barbs.
 3. Theapparatus for generating the mesh models of the feathers according toclaim 2, wherein the calculating unit receives the number of gridscorresponding to each of the maximum values and the minimum values froma user to calculate the number of grids for each of the groups of barbs.4. The apparatus for generating the mesh models of the feathersaccording to claim 1, wherein the mesh model generating unit performstessellation for curved surface of the groups of barbs to extract curvedsurface points from curved line points of the barbs and constructs thepolygonal mesh model by using the curved surface points.
 5. Theapparatus for generating the mesh models of the feathers according toclaim 1, wherein the mesh model generating unit determines whether barbwidths of the groups of barbs are to be applied to construct thepolygonal mesh model.
 6. The apparatus for generating the mesh models ofthe feathers according to claim 5, wherein the geometrical modelanalyzing unit detects the barb widths for each of the groups of barbswhen the barb widths are to be applied to the polygonal mesh model. 7.The apparatus for generating the mesh models of the feathers accordingto claim 6, wherein the geometrical model analyzing unit detects themaximum value and the minimum value of the barb widths.
 8. The apparatusfor generating the mesh models of the feathers according to claim 6,wherein the calculating unit calculates a grid ratio for each of thegroups of barbs by using the barb widths.
 9. The apparatus forgenerating the mesh models of the feathers according to claim 8, whereinthe mesh model generating unit constructs the polygonal mesh models byapplying the grid ratio to the number of grids.
 10. A method forgenerating mesh models of feathers, comprising the steps of: a step ofcalculating curve lengths of barbs belonging to each of the groups ofbarbs of geometrical curve model of the feather and calculating aaverage curve length for the curve lengths of the barbs; a step ofreflecting the average curve length of each of the groups of barbs tocalculate number of grids for each of the groups of barbs; and a step ofapplying the number of grids for each of the groups of barbs toconstruct a polygonal mesh model from the geometrical curve model. 11.The method for generating the mesh models of the feathers according toclaim 10, wherein the step of calculating the average curve lengthincludes detecting the maximum value and the minimum value for theaverage curve length of each of the groups of barbs.
 12. The method forgenerating the mesh models of the feathers according to claim 11,further comprising prior to the step of calculating the number of grids,a step of receiving the number of grids corresponding to the maximumvalue and the minimum value from user.
 13. The method for generating themesh models of the feathers according to claim 12, wherein the step ofcalculating the number of grids uses the number of grids correspondingto the maximum value and the minimum value to calculate the number ofgrids for each of the groups of barbs.
 14. The method for generating themesh models of the feathers according to claim 10, further comprising,prior to the step of constructing the polygonal mesh model, a step ofperforming tessellation for curved surface of the groups of barbs toextract the curved surface points from the curved line points of thebarbs.
 15. The method for generating the mesh models of the feathersaccording to claim 10, further comprising a step of determining whetherbarb widths of the groups of barbs are to be applied to construct thepolygonal mesh model.
 16. The method for generating the mesh models ofthe feathers according to claim 15, further comprising a step ofcalculating the barb widths for each of the groups of barbs when thebarb widths are to be applied to the polygonal mesh model.
 17. Themethod for generating the mesh models of the feathers according to claim16, further comprising a step of detecting the maximum value and theminimum value of the barb widths.
 18. The method for generating the meshmodels of the feathers according to claim 16, further comprising a stepof calculating a grid ratio for each of the groups of barbs by using thebarb widths.
 19. The method for generating the mesh models of thefeathers according to claim 18, wherein the step of constructing thepolygonal mesh model applies the grid ratio to the number of grids toconstruct the polygonal mesh model.